
<button type="button" @onclick="Add">Add Number</button>

@code
{
    // You need a Property + PropertyChanged event in combination to make the custom component data binding works
    [Parameter]
    public List<int> Numbers { get; set;} = new List<int>();

    [Parameter]
    public EventCallback<List<int>> NumbersChanged { get; set;}

    Random _rnd = new Random();

    async Task Add()
    {
        Numbers.Add(_rnd.Next());
        await NumbersChanged.InvokeAsync(Numbers);
    }
}